package com.xyyl.patient.service.user;

import java.util.List;

import com.xyyl.patient.core.support.Pager;
import com.xyyl.patient.entity.doctor.Doctor;
import com.xyyl.patient.entity.doctor.DoctorPatientRelation;
import com.xyyl.patient.entity.pharmacy.Pharmacy;
import com.xyyl.patient.entity.question.Prescription;
import com.xyyl.patient.entity.user.User;
import com.xyyl.patient.vo.IMVo;
import com.xyyl.patient.vo.user.UserVo;

/**
 * @ClassName: UserService
 * @Description:
 * @author chens
 * @date 2017年8月17日
 *
 */
public interface UserService {

	public List<UserVo> selectList(Pager pager);

	/**
	 * @Title: queryUserDetailById @Description:详情 @param @param
	 * userid @param @return 参数 @return UserVo 返回类型 @throws
	 */
	public UserVo queryUserDetailById(Integer userid);

	/**
	 * @Title: bindUserInfo @Description: 绑定微信用户信息 @param @param
	 * userVo @param @return 参数 @return int 返回类型 @throws
	 */
	public int bindUserInfo(User user);

	/**
	 * @Title: queryUserDoctorList @Description: 获取用户意思列表 @param @param
	 * patient @param @return 参数 @return int 返回类型 @throws
	 */
	public List<Doctor> queryUserDoctorList(Integer patient);

	/* 更新医患关系 */
	public Integer setRelation(DoctorPatientRelation doctorPatientRelation);

	/**
	 * @Title: queryUserPrescriptionList @Description: 获取用户处方单 @param @param
	 * patientid @param @return 参数 @return int 返回类型 @throws
	 */
	public List<Prescription> queryUserPrescriptionList(Integer patientid);

	// 查指定人的处方单
	public Prescription queryUserPrescription(Integer id);

	/* 查最近的 药店 */

	public List<Pharmacy> getBestPharmacy(double la, double lo);

	/**
	 * @Title: getIndexIM @Description:获取聊天首页的列表 @param @param
	 * userid @param @return 参数 @return IMVo 返回类型 @throws
	 */
	public List<IMVo> getIndexIM(Integer userid);

}
